/**
 * @author kaho
 * @since 2021/2/28
 */
public class _896_单调数列 {

    /**
     * 如果数组是单调递增或单调递减的，那么它是单调的。
     *
     * 如果对于所有 i <= j，A[i] <= A[j]，那么数组 A 是单调递增的。 如果对于所有 i <= j，A[i]> = A[j]，那么数组 A 是单调递减的。
     *
     * 当给定的数组 A 是单调数组时返回 true，否则返回 false。
     *
     * 来源：力扣（LeetCode）
     * 链接：https://leetcode-cn.com/problems/monotonic-array
     * 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
     * @param A
     * @return
     */
    public static boolean isMonotonic(int[] A) {
        if (A.length<=1) {
            return true;
        }
        boolean b = false;
        for (int i = 1; i < A.length; i++) {
            if(A[i]!=A[i-1]){
                b = A[i-1] > A[i];
                break;
            }
        }

        for (int i = 2; i < A.length; i++) {
            if (b){
                if (A[i]>A[i-1]) {
                    return false;
                }
            }else {
                if (A[i]<A[i-1]) {
                    return false;
                }
            }
        }
        return true;
    }

    public static void main(String[] args) {
        boolean monotonic = isMonotonic(new int[]{1, 3, 2});
    }
}
